import 'package:built_collection/built_collection.dart';
import 'package:equatable/equatable.dart';
import 'package:flutter/material.dart';
import 'package:mobile_app.core/core/domain/entities/learning_content/lexical_item/lexical_item.dart';
import 'package:mobile_app.core/core/presentation/helpers/screen_util_mixin.dart';
import 'package:mobile_app.core/core/presentation/theme/theme.dart';
import 'package:mobile_app.core/core/presentation/utils/icons/custom_regular_icons.dart';
import 'package:mobile_app.core/core/presentation/widgets/overlay_button.dart';
import 'package:mobile_app.core/core/presentation/widgets/page_tile_horizontal_padding.dart';
import 'package:mobile_app.core/core/presentation/widgets/stateful_wloc.dart';
import 'package:mobile_app.core/core/presentation/widgets/tiles/tile_gap.dart';
import 'package:mobile_app.core/core/presentation/widgets/tiles/tile_group.dart';
import 'package:mobile_app.core/core/presentation/widgets/tiles/unpressable_text_tile.dart';
import 'package:mobile_app.core/core/presentation/widgets/wloc_builder.dart';
import 'package:mobile_app.home.core/core/presentation/helpers/build_lexical_item_profress_info.dart';
import 'package:mobile_app.home.core/core/presentation/helpers/lexical_item_progress_model_factory.dart';
import 'package:mobile_app.home.core/core/presentation/models/lexical_item_progress_model/lexical_item_progress_model.dart';
import 'package:mobile_app.home.learning.core/user_progress_block/presentation/widget/widget.dart';
import 'package:mobile_app.home.learning.training/summarizing_card/presentation/localization/translation.dart';

part 'models/lexical_item_model.dart';

part 'view.dart';

part 'widgets/lexical_item_tile.dart';

part 'wloc.dart';

part 'wloc_state.dart';

part 'wloc_state_factory.dart';

class SummarizingCard extends StatefulWidget {
  const SummarizingCard({
    required this.lexicalItems,
    required this.lexicalItemProgressPercentMap,
    required this.onContinuationButtonPressed,
    super.key,
  });

  final BuiltList<LexicalItem> lexicalItems;
  final BuiltMap<String, int> lexicalItemProgressPercentMap;
  final VoidCallback onContinuationButtonPressed;

  @override
  State<SummarizingCard> createState() => _SummarizingCardWloc();
}
